iT邦幫忙

2026 iThome 鐵人賽

DAY 25
0

接續上一篇的內容~

四、認識 Express.js 的核心概念

1.Routing(路由)
Routing 決定不同的 HTTP Method 與 URL 要執行哪段程式。

https://ithelp.ithome.com.tw/upload/images/20261009/20184323WOOLMmN0TT.png

例如:

app.get("/users", (req, res) => {
  res.json({ message: "取得使用者" });
});

app.post("/users", (req, res) => {
  res.json({ message: "新增使用者" });
});

app.delete("/users/:id", (req, res) => {
  res.json({ message: "刪除使用者" });
});

2.Request 與 Response
Express.js 最常見的兩個參數:

  • req(Request):前端傳給後端的資料。
  • res(Response):後端回傳給前端的資料。

例如:

app.get("/users/:id", (req, res) => {
  const userId = req.params.id;

  res.json({
    id: userId,
    name: "SS C"
  });
});

當前端呼叫:
GET http://localhost:3000/users/123

後端回傳:

{
  "id": "123",
  "name": "SS C"
}

Express.js 常見的 Request 資料來源:
https://ithelp.ithome.com.tw/upload/images/20261009/2018432390si7EZBWD.png

3.Middleware(中介軟體)
Middleware 是 Express.js 非常重要的概念。

它可以在 Request 進入最終的 API 處理函式之前,執行額外邏輯,
例如:

  • 驗證 Token
  • 紀錄 API Log
  • 解析 JSON
  • 檢查使用者權限

https://ithelp.ithome.com.tw/upload/images/20261009/20184323z8AFyQN9Ik.png

app.use((req, res, next) => {
  console.log("收到 API Request");

  next();
});

這裡的 next() 代表把控制權交給下一個 Middleware 或符合條件的 Route。
如果沒有呼叫 next(),也沒有送出 Response,這次請求就可能一直等待。

4.express.json()
前端 POST JSON 時,通常需要:

app.use(express.json());

app.post("/users", (req, res) => {
  console.log(req.body);

  res.json({
    message: "新增成功",
    data: req.body
  });
});

express.json() 會解析符合條件的 JSON Request Body,讓後端可以使用 req.body。


上一篇
Day 24 - Express.js 基礎 -1
下一篇
Day 26 - Express.js 寫個小-實例
系列文
在AI 時代的碰撞下~當前端工程師開始碰上後端又到了雲服務的旅程 共 30 篇
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言